package serializable.javaStyle;

import java.io.*;

public class SimpleSerial {
    public static void main(String[] args) throws Exception {
        File file = new File("output/person.out");

        // 这段代码是实现对象的序列化的
        ObjectOutputStream oout = new ObjectOutputStream(new FileOutputStream(file));
        Person person = new Person("John", 101, Person.Gender.MALE);
        oout.writeObject(person);
        oout.close();
        System.out.println(person);


//        // 这段代码是实现对象的反序列化的
//        ObjectInputStream oin = new ObjectInputStream(new FileInputStream(file));
//        // 没有强制转换到Person类型，但是仍然会调用这个对象的toString方法
//        Object newPerson = oin.readObject();
//        oin.close();
//        System.out.println(newPerson);
    }

}
